package com.qumitech.visualnovel.datasource.console;

import com.qumitech.visualnovel.model.dao.console.ChannelRechargeDataDO;
import com.qumitech.visualnovel.model.dao.channel.LaunchData;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ChannelRechargeDataDOMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(ChannelRechargeDataDO record);

    int insertSelective(ChannelRechargeDataDO record);

    ChannelRechargeDataDO selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(ChannelRechargeDataDO record);

    int updateByPrimaryKey(ChannelRechargeDataDO record);

    List<ChannelRechargeDataDO> getList(@Param("startTime") String startTime,
                                       @Param("endTime") String endTime,
                                       @Param("channelList") List<String> channelList,
                                       @Param("offset") int offset,
                                       @Param("pageSize") int pageSize,
                                       @Param("orderType") String orderType,
                                       @Param("orderBy") String orderBy);


    int getCount(@Param("startTime") String startTime,
                 @Param("endTime") String endTime,
                 @Param("channelList") List<String> channelList);

    List<LaunchData> getLaunchDataList(@Param("offset") int offset,
                                       @Param("pageSize") int pageSize,
                                       @Param("targetDate") String targetDate,
                                       @Param("targetChannel") String targetChannel,
                                       @Param("activeChannels") List<String> activeChannels);
}